#!/bin/bash
#
# Comando "ConfigT"
#
# Funcionalidad:
# Guardar y recuperar los datos almacenados en el archivo de configuración del sistema
#
# Parámetros
# Parámetro 1 (obligatorio): Tipo de operación (L=Lee, G=Guarda, E=Existe)
# Parámetro 2 (obligatorio para guardar o leer): Nombre de la variable a leer/guardar
# Parámetro 3 (obligatorio para guardar): Valor de la variable a guardar
#
# Códigos de error:
#	1 - Cantidad de parámetros inválida
#	2 - El sistema no fue instalado correctamente
#	3 - El archivo de configuración no existe
#
##############INICIO FUNCIONES#################
# Busca una variable y devuelve su valor si la encuentra
# Parámetros:
#	1-Nombre de la variable
function leerVariable() {
	grep "^$1=" "$archivoConfig" | sed -e "s/^$1=//" -e "s/=.*//";
}
#---------------------------------------------#
# Guarda la variable y su valor al final del archivo de configuración
# Parámetros:
#	1-Nombre de la variable
#	2-Valor de la variable
function guardarVarConfig() {
	if [ -n "$1" -a -n "$2" ]; then
		echo "$1"="$2"="$(whoami)"="$(date +"%Y-%m-%d %T")" >> "$archivoConfig";
	else
		echo >> "$archivoConfig";
	fi	
}
#################FIN FUNCIONES##################

#VARIABLE QUE MODIFICA EL INSTALADOR. NO TOCAR.
#CONFDIR="ESTA RUTA LA MODIFICA EL INSTALADOR. NO TOCAR!"

if [ -z "$CONFDIR" ]; then
	exit 2;
fi

archivoConfig="$CONFDIR/instalarT.conf";

# Verifico que los parámetros correspondan a la operación solicitada
if [ $# -eq 2 -a "$1" == "L" ]; then
	if [ -e "$archivoConfig" ]; then
		leerVariable "$2";
	else
		exit 3;
	fi
elif [ $# -eq 3 -a "$1" == "G" ]; then
	if [ ! -d "$CONFDIR" ]; then
		mkdir "$CONFDIR";
	fi
	guardarVarConfig "$2" "$3";
elif [ $# -eq 1 -a "$1" == "E" ]; then
	if [ -e "$archivoConfig" ]; then
		exit 0;
	else
		exit 3;
	fi
else
	exit 1;
fi
exit 0;